package indi.jp.project.process.dao;

import indi.jp.project.process.entity.FlowType;
import indi.jp.project.process.entity.FlowTypeNode;
import org.apache.ibatis.annotations.Mapper;

import java.sql.SQLException;
import java.util.LinkedList;
import java.util.List;

/**
 * 流程DAO
 *
 * @author jiangping
 * @date 2022/5/5
 */
@Mapper
public interface FlowDAO {

    List<FlowType> queryTypeList() throws SQLException;

    LinkedList<FlowTypeNode> queryTypeNodeList(String typeId) throws SQLException;

    LinkedList<FlowTypeNode> queryFlowByTypeCode(String typeCode) throws SQLException;

    void insertTypeNode(FlowTypeNode flowTypeNode) throws SQLException;

    void updateTypeNode(FlowTypeNode flowTypeNode) throws SQLException;

    void deleteInitTypeNodes(int typeId) throws SQLException;

    int deleteById(String id) throws SQLException;
}
